home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 3 / Gold Medal Software - Volume 3 (Gold Medal) (1994).iso / prog / dflt18.arj / README.DOC < prev    next >
Text File  |  1994-03-25  |  11KB  |  224 lines

  1. March, 1994
  2.  
  3. D-Flat Version 18
  4.  
  5. The source files in the DFLAT archive constitute the D-Flat windowing
  6. system. This is public domain code. You may use it in your
  7. applications without restriction. You may freely distribute source
  8. code. It would be nice if you would give credit to Dr. Dobb's Journal
  9. as the original publisher of the source code.
  10.  
  11. The software build procedure makes a program named memopad.exe. It is
  12. a multiple-document notepad program. Observe the #define VERSION
  13. statement in dflat.h. The version number should correspond with the
  14. nn in the DFLTnn.ARC filename that you downloaded. Check the uploads
  15. periodically to see if there is a more recent version available.
  16.  
  17. My CompuServe ID is 71101,1262. I monitor the DDJFORUM every day and
  18. prefer that you discuss D-Flat there so that every one can benefit
  19. from your comments.
  20.  
  21. ============== Microsoft C 7.0
  22.  
  23. To build with Microsoft C 7.0, type this command
  24.  
  25.     C>nmake /f makefile.msc
  26.  
  27. ========== Borland C++ 3.0 ============
  28.  
  29. To build with the Borland C++ 3.1 or 4.0 make utility:
  30.  
  31. Set the DRIVE macro in the makefile to the drive and directory 
  32. where your compiler is installed.
  33.  
  34. Type this command:
  35.  
  36.     C>make /fmakefile.bcc
  37.  
  38. ========== WATCOM C 8.0 ============
  39.  
  40. To build with Watcom C 8.0, type this command
  41.  
  42.     C>wmake /f makefile.wat
  43.  
  44. =======================================================
  45.  
  46. D-Flat uses Compressed help files. It uses an adaptation of the
  47. Huffman compression programs from the Dr. Dobb's Journal C
  48. Programming Column of early 1991. 
  49.  
  50. The makefile compresses the help file with these commands:
  51.  
  52.    C>huffc memopad.txt memopad.hlp
  53.    C>fixhelp memopad.hlp
  54.  
  55. Both of the programs must be run in order for the help system to work
  56. properly. Note that .hlp files from previous versions are not
  57. compatible with version. The .txt files are, however, so you can use
  58. the huffc and fixhelp programs to rebuild the .hlp file.
  59.  
  60. ===============================================
  61.  
  62. This is version 18. It fixes these problems:
  63.  
  64. 1. Changing screen modes did not work with all systems.
  65.  
  66. 2. Selecting text and scrolling with the keyboard sent the cursor off
  67. of the screen.
  68.  
  69. 3. The PAINT message did not repaint (clear) the screen after a
  70. CLEARTEXT message.
  71.  
  72. 4. Overhauled the File Open and Save As dialog boxes. Note that these
  73. DBs now return the file name only and have changed the drive and 
  74. subdirectory to what the user chooses. The application window saves
  75. and restores the drive and subdirectory on open and close, but your
  76. application needs to know that the log-on could be different after
  77. using the dialog boxes.
  78.  
  79. 5. Added an EDITOR class that manages tabs on input and output. This
  80. class does not do paragraph reforming.
  81.  
  82. 6. Added the wd parameter to the InputBox function.
  83.  
  84. 7. Clicking a box frame in a dialog box disabled the radio buttons,
  85. checkboxes, etc. inside the box.
  86.  
  87. 8. Dialog box unnecessarily repainted when changing focus among controls.
  88.  
  89. 9. Padding blank lines when painting a textbox used a line that was one
  90. character too short.
  91.  
  92. 10. Help windows would be overwritten by the borders of the current
  93. in-focus window.
  94.  
  95. 11. Large help files took a long time to load, particularly on slower
  96. processors. This was because the load process read the entire
  97. compressed database to build an internal list of help windows. I added
  98. a program (fixhelp.c) that puts the list at the end of the database.
  99. The load process now seeks to the end and reads the list instead of
  100. computing it. I removed the feature that let D-Flat applications load
  101. the uncompressed text version of the help file.
  102.  
  103. 12. Added a [*] comment token to the help database. The memopad
  104. doesn't use it, but Quincy does. A program can call the HelpComment
  105. function to retrieve a pointer to a comment associated with the
  106. specified help window. The Quincy tutorial uses it to record script
  107. commands associated with specific tutorial help windows.
  108.  
  109. 13. The Search and Replace code did not work properly if you tried to
  110. replace, for example, "void" with "(void)" and chose to change every
  111. occurrence. The program went into a loop replacing first "void" with
  112. "(void)", then "(void)" with "((void))", and so on.
  113.  
  114. 14. Removed much of the heap usage in the helpbox window.
  115. Applications would sometimes crash unexpectedly upon exit after you
  116. used a lot of help window navigation. These changes seem to have
  117. corrected the problem and made the code simpler, too.
  118.  
  119. ----------------------------------------------------------------------
  120. Calendar of D-Flat Source Code Published in the C Programming Column
  121.  
  122.              1991                            1992                              
  123.              May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct
  124.  APPLICAT.C                                                   x            
  125.  BARCHART.C                                       x                            
  126.  BOX.C                                                                x    
  127.  BUTTON.C                                                             x     
  128.  CALENDAR.C                                       x                        
  129.  CHECKBOX.C                                                           x      
  130.  CLASSDEF.C       x                                                        
  131.  CLASSDEF.H       x                                                        
  132.  CLASSES.H                    x                                            
  133.  CLIPBORD.C                                       x                        
  134.  COMBOBOX.C                                                           x    
  135.  COMMANDS.H                       x                                        
  136.  CONFIG.C         x           x                                            
  137.  CONFIG.H         x       x                                                
  138.  CONSOLE.C    x                                                            
  139.  DECOMP.C                                                                     x
  140.  DFLAT.H          x       x                                                    
  141.  DFLATMSG.H                       x                                               
  142.  DIALBOX.C                                                        x                
  143.  DIALBOX.H                    x                                                    
  144.              1991                            1992                                  
  145.              May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct
  146.  DIALOGS.C                    x                                                   
  147.  DIRECT.C                                                                         x
  148.  EDITBOX.C                                    x                                    
  149.  FILEOPEN.C                                                                       x
  150.  HELPBOX.C                                                                    x 
  151.  HTREE.C                                                                          x
  152.  HTREE.H                                                                          x
  153.  HUFFC.C                                                                          x
  154.  KEYS.C                       x                                            
  155.  KEYS.H       x                                                            
  156.  LISTBOX.C                                            x                    
  157.  LISTS.C                          x                                        
  158.  LOG.C                                                x                    
  159.  MEMOPAD.C                        x                                        
  160.  MENU.C                                                   x                
  161.  MENU.H                       x                                            
  162.  MENUBAR.C                                                x                
  163.  MENUS.C                      x                                            
  164.  MESSAGE.C            x                                                    
  165.  MESSAGE.H            x                                                    
  166.              1991                            1992                          
  167.              May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct
  168.  MOUSE.C      x                                                            
  169.  MSGBOX.C                                                             x     
  170.  NORMAL.C                             x                                    
  171.  PICTBOX.C                                        x                        
  172.  POPDOWN.C                                                x                
  173.  RADIO.C                                                              x    
  174.  RECT.C                           x                                        
  175.  RECT.H       x                                                            
  176.  SEARCH.C                                         x                        
  177.  SLIDEBOX.C                                                           x    
  178.  SPINBUTT.C                                                           x      
  179.  STATBAR.C                                                                        x 
  180.  SYSMENU.C                                                x                
  181.  SYSTEM.H     x                                                            
  182.  TEXT.C                                                               x      
  183.  TEXTBOX.C                                x                                
  184.  VIDEO.C      x                                                            
  185.  VIDEO.H      x                                                            
  186.  WATCH.C                                                              x      
  187.  WINDOW.C         x       x                                                
  188.                                                                            
  189.  
  190. ---------------------------------------------------------------------
  191. Calendar of D-Flat Topics in the C Programming Column
  192.  
  193. 1991
  194. May:       Low-level keyboard, mouse, and screen functions
  195. June:      Classes, configuration
  196. July:      Event collection, message passing
  197. August:    Window driver
  198. September: Defining dialog boxes, menus, keys
  199. October:   Commands, messages, rectangles, example application
  200. November:  The NORMAL window class
  201. December:  The TEXTBOX window class
  202.  
  203. 1992
  204. January:   The EDITBOX window class
  205. February:  The PICTUREBOX window class, the Clipboard, text searching
  206. March:     The LISTBOX window class and message logging
  207. April:     The MENUBAR and POPDOWN window classes, the system menu
  208. May:       The APPLICATION window class
  209. June:      The DIALBOX window class 
  210. July:      The ERRORBOX, and MESSAGEBOX window classes,
  211.            BUTTON, RADIOBUTTON, CHECKBOX, COMBOBOX, SPINBUTTON controls
  212. August:    Annual C issue. Discusses a Pen-based version of D-Flat
  213. September: The HELPBOX window class
  214. October:   Help Database compression, File Open and File Save dialog boxes.
  215. November:  Official launch of D-Flat++
  216.  
  217. Buy back issues or the CD-ROM from Miller-Freeman to get the complete D-Flat
  218. narrative from May '91 to October '92. These columns describe the
  219. development of D-Flat and serve as a tutorial on its use. The D-Flat
  220. reference manual is DFLAT.DOC.
  221.  
  222.  
  223.  
  224.